1. Field of the Invention
The present invention relates to the field of collaborative computing and more particularly to managing resource consumption for an e-meeting hosted within a cluster of servers.
2. Description of the Related Art
The rapid development of the Internet has led to advanced modes of communication and collaboration. Using the Internet as a backbone, individuals worldwide can converge in cyberspace to share ideas, documents and images in a manner not previously possible through conventional telephony and video conferencing. To facilitate collaboration over the Internet, a substantial collection of technologies and protocols have been assembled to effectively deliver audio, video and data over the single data communications medium of the Internet. These technologies include both synchronous forms of collaboration such as instant messaging and application sharing, and asynchronous forms of collaboration such as discussion forums and document libraries.
An e-meeting represents one popular form of electronic collaboration. In an e-meeting, participants can view a common space, for instance a whiteboard or a shared application (or both), through which ideas can be exchanged. The viewing of the common space can be complemented with a teleconference, a videoconference, an instant messaging session, or any combination thereof, such that the e-meeting can act as a near substitute for an in-person meeting in a conference room. In as much as an e-meeting can involve a set of different participants utilizing a diverse set of computing tools, the resource consumption of any given e-meeting can be significant.
The problem of e-meeting resource consumption can be compounded in a clustered environment where multiple servers host multiple e-meeting instances according to high-availability and load balancing principles. Specifically, in the clustered environment, different participants to an e-meeting can be handled by different servers in order to achieve availability and load balancing objectives in the cluster. However, to support participants to an e-meeting across different servers can require substantial replication of e-meeting specific data across the different servers of the cluster. Therefore, unnecessary resource consumption can result merely through data replication for the e-meeting.
Clustered environments have long incorporated session affinity as a tool for ensuring that individual clients remain bound to a particular server in a cluster. Specifically, session affinity refers to the logical linkage between a requesting client and a responsive clone or process in a server group, often referred to in the art as a node, where both the requesting client and the responsive clone or node have engaged in a communicative session. In consequence of session affinity, within a session once a server clone has been selected to respond to the requests of a client, the selected clone can remain bound to the requesting client throughout the duration of the session. As a result of this binding, the prevailing selection policy need be applied only once in a session and the overhead resulting from the needless re-application of the selection policy can be avoided. Notwithstanding, while session affinity accounts for a binding of an individual to a particular server, session affinity does not treat the circumstance where the individual belongs to a group such as a group of participants to an e-meeting.